Method and system for providing service to wireless devices operating in a power saving mode

ABSTRACT

A method and system for a network component ( 700 ) for determining when to provide services to power saving client devices ( 701 ) is disclosed. The method comprising the steps of receiving a requested servicing method ( 420 ) from the client device ( 701 ), determining an ability to accommodate ( 420, 510, 630 ) the requested servicing method, and providing an indication of the ability to accommodate ( 435, 450, 470 ) the requested servicing method to the client device. In one aspect of the invention the ability to accommodate is based on at least one factor selected from the group consisting of, the requested service method, a proposed schedule, current demand at the network component, and the current operating state of the network component ( 420, 510, 630 ).

This application claims the benefit, pursuant to 35 USC §119(e), to thatprovisional patent application filed on Nov. 10, 2003 in the UnitedStates Patent and Trademark Office and assigned Ser. No. 60/518,907, thecontents of which are incorporated by reference herein.

This application relates to wireless communications and, moreparticularly, to providing services to client devices utilizing powersaving capabilities.

Wireless networking of servers, routers, access points and clientdevices has greatly expanded the ability of users to create and expandexisting networks. Further, wireless network can be dynamically modifiedas users join or the network. In fact, wireless networks have allowedclients to connect devices as such as notebook or laptop computers,Personal Digital Assistants (PDAs), cell phones, to office and homenetworks from remote locations not typically associated with thenetwork. Such remote locations, referred to as hot spots, allow clientsto access their own networks from local coffee shops.

To facilitate the wireless communication explosion and providecompatibility among different devices, communications protocols, such asIEEE 802.11a/b/g have been established. However, these protocols aredesigned primarily for the transmission of data and treat all dataequally. Such equal treatment precludes a service provider fromguaranteeing a known Quality of Service (QoS) when the data transmittedincludes a mix of textual data, video, audio or telephony. Failure totimely deliver video data, for example, may cause errors in motionrending the images unusable. Hence, the IEEE 802.11e standard has beenproposed that establishes a priority of transmission for different typesof data. In one aspect, a priority is established based simply on thedata type. In another aspect, parameters may be assigned to specificdata types to insure a specified QoS.

An important aspect of the network client devices is that they arebattery operated. Thus, many of these devices desire to conserve powerand operate in a power saving mode. In this mode, the client devices arenot powered and, thus, are not able to receive data from serviceproviders operating at the routers, servers, or access points whentransmission is required. Rather, a client device may request that theservice provider provide service at predetermined times, i.e.,scheduled, or on-demand, i.e., unscheduled. However, as more devicesenter and demand service from the network, the demands of individualdevices can introduce conflicts in one or more network components, i.e.,servers, routers, access points, etc., or there may be requests that thenetwork may not be able to ho nor.

Hence, there is a need in the industry for a method and system forprocessing client device requests for service that is able to avoidand/or resolve conflicts that can be introduced by such requests.

A method and system for a network component for determining when toprovide services to power saving client devices is disclosed. The methodcomprising the steps of receiving a requested servicing method from theclient device, determining an ability to accommodate the requestedservicing method, and providing an indication of the ability toaccommodate the requested servicing method to the client device. In oneaspect of the invention the ability to accommodate is based on at leastone factor selected from the group consisting of, the requested servicemethod, a proposed schedule, current demand at the network component,and the current operating state of the network component.

FIG. 1 illustrates a conventional wireless communication system;

FIGS. 2 a-2 d illustrate MAC layer formats for the proposed IEEE 802.11estandard;

FIGS. 3 a-3 c illustrates traffic specification element formats betweena requesting device and network component;

FIG. 4 illustrates a flow chart for providing service to client devicesoperating in power-saving mode in accordance with a first aspect of theinvention;

FIG. 5 illustrates a flow chart for providing service to client devicesoperating in power-saving mode in accordance with a second aspect of theinvention;

FIG. 6 illustrates a flow chart for providing service to client devicesoperating in power-saving mode in accordance with a second aspect of theinvention; and

FIG. 7 illustrates a system for executing the processing shown inherein.

It is to be understood that these drawings are solely for purposes ofillustrating the concepts of the invention and are not intended as adefinition of the limits of the invention. The embodiments shown in thefigures herein and described in the accompanying detailed descriptionare to be used as illustrative embodiments and should not be construedas the only manner of practicing the invention. Also, the same referencenumerals, possibly supplemented with reference characters whereappropriate, have been used to identify similar elements.

FIG. 1 illustrates a conventional based wireless network 100 that canallow wireless devices 110, through server, router or access point (AP)120 to receive or transmit data to communication network 130, e.g., theInternet. AP 120 may further enable devices 140, connected via a cable145, to receive and transmit data to network 130 and/or to devices 110.Also shown is network 130 in communication with server 150, which mayalso be in communication with a second network 160. As would berecognized second network 160 and network 130 may be the same ordifferent network. In this illustrative example, network 130 may be anetwork associated with a local hot spot and network 160 may be acorporate or home network that permits access by only authorized users.

Device 110.1, shown in dotted lines, represents a client device that isdynamically joined through AP 120 to network 130. In this case, AP 120must acknowledge the addition of device 110.1 and accommodate itsrequests for service in view of the existing load imposed by the alreadyconnected devices 110 and 140.

FIG. 2 a illustrates a proposed IEEE 802.11e MAC layer data format. FIG.2 b illustrates the format of the Frame Control field of the MAC layer.The frame control field shown in FIG. 2 b includes two (2) bits fortype, 210 and four (4) bits for subtype, 211 that determine whether thenext frame is of a MAC Layer Data, Management or Control format FIG. 2 balso includes a Power Management field that is used to indicate thepower management mode of a client device. In one mode a value of “1” inthe power management field indicates that the client device is in apower saving mode. A value of “0” indicates that the client device isalways in an active mode.

FIG. 2 c illustrates a proposed MAC layer Management Frame format whichincludes two-byte Frame Control field that determined the type ofManagement Frame Format. For example, Management Frame Format can beRequest (association, probe, action, add TS action, blockacknowledgement), and Response (association, probe, action, add TSaction, block acknowledgement), etc. Within the Action request there areQoS, DLP and block acknowledgment actions. Furthermore, with the QoSaction request there is the sub-request for “Add Traffic Specification”(AddTS), and, also a response to the AddTS request. The response to therequest AddTS includes a Status Code Fixed Field that is used a ResponseManagement Frame to indicate the success or failure of a requestedoperation. FIG. 2 d illustrates the two (2) byte Status Code Field. Anexample of Status Code Fields are shown in Table 1. TABLE 1 ExemplaryStatus Code Field Definitions 32 Unspecified, QoS-related failure 33Association denied due to QAP having insufficient bandwidth to handleanother QSTA 34 Association denied due to excessive frame loss ratesand/or poor conditions on current operating channel 35 Association (withQBSS) denied due to requesting station not supporting the QoS facility37 The request has been declined. 38 The request has not been successfulas one or more parameters have invalid values. 39 The TS has not beencreated because the request cannot be honored. However, a suggestedTSPEC is provided so that the initiating QSTA may attempt to set anotherTS with the suggested changes to the TSPEC. 40 The TS has not beencreated. However, the HC may be capable of creating a TS, in response toa request, after the time indicated in the TS Delay element. 41 DirectLink is not allowed in the BSS by policy 42 Destination STA is notpresent within this QBSS. 43 The Destination STA is not a QSTA.

FIG. 3 a illustrates a Traffic Specification format used to set upcommunicate between a client device and a network access point. FIG. 3 billustrates the format of the TS Info field within the TrafficSpecification format shown in FIG. 3 a. As shown, the TS Info fieldincludes an Automatic Power Saving Delivery (APSD) field and a Schedulefield. The APSD field, when set, informs the AP that the client deviceis operating in a power saving mode and the schedule field, when set,informs the AP that the client device requests that services be providedon a proposed scheduled basis. In this manner, the client device mayawaken from the power saving mode at a time just before the expectedtransmission of the requested service. FIG. 3 c illustrates a format fora proposed schedule.

FIG. 4 illustrates a flow chart of an exemplary processing 400 forprocessing request from a client device in accordance with theprinciples of the invention. In this Illustrated process, a servicerequest is received at block 410. At block 420 a determination is madewhether the service requested is to be provided on a scheduled basis. Inone aspect of the invention, a scheduled based service may be requestedby setting the “schedule bit” shown in FIG. 3 b. If the answer isnegative, then a determination is made, at block 430, whether theservice provider can honor the non-scheduled, i.e., the “unscheduled”request. If the answer is in the affirmative, then an indication isreturned to the requesting client device, at block 435, that therequested service can be accommodated. In one aspect, the indication mayinclude setting the “schedule bit”, shown in FIG. 3 b to a first logicalvalue, e.g., a zero value.

However, if the answer is negative, then a schedule for providingservice to the requesting client device is determined at block 440. Theprovide schedule may be based on current and projected operatingdemands, loads and processing capability. An indication is then returnedto the requesting client device, at block 450, that the service isaccommodated with change. In one aspect, the indication may includesetting the “schedule bit”, shown in FIG. 3 b to a second logical value,e.g., a one value. In addition, the determined schedule is also providedto the requesting client device.

Returning to the determination at block 420, if the answer isaffirmative, then the service provider reviews the requested schedule atblock 460. At block 465, the service provider may modify the proposedschedule. Modifications of the proposed schedule may be necessary basedon factors such as conflicts with existing schedules, station loading,current demands, current loads, projected demands, projected loadsand/or other processing considerations.

At block 470, an indication is then returned to the requesting clientdevice that the requested service is accommodated or accommodated withchange. In one aspect, the indication may include setting the “schedulebit”, shown in FIG. 3 b, to a second logical value, e.g., a one value.In addition, the schedule of service, whether as-proposed oras-requested by the client device or modified by a network component,e.g., AP 120, is also provided to the requesting client device.

FIG. 5 illustrates a flow chart of a second aspect 500 of the processingshown in FIG. 4. In this illustrative aspect of the invention, afterdetermining, at block 420, that a request for scheduled service wasreceived, a determination is made, at block 510, whether the networkpolicy and/or network conditions allow accepting the request. If theanswer is in the affirmative then the processing proceeds to review theproposed schedule, modify it, if necessary, and transmit an indicationof scheduled service as discussed with regard to processing shown inFIG. 4 at blocks 460, 465 and 470.

However, if the answer is negative, then an indication is provided tothe requesting device that the request for service has been denied atblock 530. Service may be denied, for example, if AP 120 is operating inan on-demand only mode and has no provisions for preparing a schedule.Although not shown, it would be recognized that a review of the clientproposed schedule may be made prior to the determination at block 510and a denial of service may also occur if the proposed schedule cannotbe accommodated in view of the current demand and load requirementsplaced on the AP 120.

FIG. 6 illustrates a flow chart of a third aspect 600 of the presentinvention. In this aspect, when it is determined, at block 420, that therequested service is an unscheduled service, a determination is made atblock 430 whether the AP 120 (service provider) can honor the requestedservice. If the answer is in the affirmative, then an indication isprovided to the requesting device as previously discussed with regard toprocessing block 435 (see FIG. 4).

However, if the answer at block 430 is negative, then a determination ismade at block 630 whether network policy and/or network conditions allowaccepting the request. If the answer is in the affirmative, then aschedule is set up and an indication is provided to the requestingdevice as previously discussed with regard to processing blocks 440 and450 as shown in FIG. 4.

However, if the answer is negative, then an indication is provided tothe requesting device that the requested service is denied at block 530.

In one aspect of the invention, the indication provided to therequesting client device communicating using an IEEE 802.11ecommunication protocol, may, for example, be formed as a combination ofdata items shown in FIG. 2. For example, the indication may beformulated as shown in Table 2. TABLE 2 Proposed IndicationConfiguration Status Sched. Operation Code APSD Bit RequestedUnscheduled 00 1 0 Accommodated service Requested Scheduled 00 1 1Accommodated service Requested Unscheduled 00 1 1 Accommodated servicewith change Requested Scheduled 00 1 1 Accommodated service with changeRequested Unscheduled 37 X X Denied service Requested Scheduled 37 X XDenied serviceX = don't care

FIG. 7 illustrates an exemplary embodiment of a system 700 that may beused for implementing the principles of the present invention. System700 may contain one or more input/output devices 702, processors 703 andmemories 704. I/O devices 702 may access or receive information from oneor more sources 701 that request services from processor(s) 703. Clientdevices 701 may be devices such as a television system, computers,notebook computer, PDAs, cells phones or other portable devices. Devices701 may request access over one or more network connections 750 via, forexample, a wireless wide area network, a wireless metropolitan areanetwork, a wireless local area network, a terrestrial broadcast system(Radio, TV), a satellite network, a cell phone, or a wireless telephonenetwork, as well as portions or combinations of these and other types ofnetworks.

Input/output devices 702, processors 703 and memories 704 maycommunicate over a communication medium 725. Communication medium 725may represent, for example, a bus, a communication network, one or moreinternal connections of a circuit, circuit card or other apparatus, aswell as portions and combinations of these and other communicationmedia. Input data requests from the client devices 701 is processed inaccordance with one or more programs that may be stored in memories 704and executed by processors 703. Processors 703 may be any means, such asgeneral purpose or special purpose computing system, or may be ahardware configuration, such as a laptop computer, desktop computer, aserver, handheld computer, dedicated logic circuit, or integratedcircuit. Processors 703 may also be Programmable Array Logic (PAL),Application Specific Integrated Circuit (ASIC), etc., which may behardware “programmed” to include software instructions that provide aknown output in response to known inputs. In one aspect, hardwarecircuitry may be used in place of, or in combination with, softwareinstructions to implement the invention. The elements illustrated hereinmay also be implemented as discrete hardware elements that are operableto perform the operations shown using coded logical operations or byexecuting hardware executable code.

In a one aspect, the principles of the present invention may beimplemented by computer readable code executed by processor 703. Thecode may be stored in the memory 704 or read/downloaded from a memorymedium 783, an I/O device 785 or magnetic, optical media such as afloppy disk, a CD-ROM or a DVD.

Requests from the device 701 received by I/O device 702 after processingin accordance with one or more software programs operable to perform thefunctions illustrated herein may also be transmitted over network 770 toone or more output devices represented as display 780, reporting device790 or second processing system 795. As discussed with regard to FIGS.4-6, an indication responsive to the requested service is returned tothe requesting device. The returned indication typically is providedthrough network 630 but may be provided by other communication media(not shown).

As one skilled in the art would recognize, the term computer or computersystem may represent one or more processing units in communication withone or more memory units and other devices, e.g., peripherals, connectedelectronically to and communicating with the at least one processingunit. Furthermore, the devices may be electronically connected to theone or more processing units via internal busses, e.g., ISA bus,microchannel bus, PCI bus, PCMCIA bus, etc., or one or more internalconnections of a circuit, circuit card or other device, as well asportions and combinations of these and other communication media or anexternal network, e.g., the Internet and Intranet.

While there has been shown, described, and pointed out fundamental novelfeatures of the present invention as applied to preferred embodimentsthereof, it will be understood that various omissions and substitutionsand changes in the apparatus described, in the form and details of thedevices disclosed, and in their operation, may be made by those skilledin the art without departing from the spirit of the present invention.It is expressly intended that all combinations of those elements thatperform substantially the same function in substantially the same way toachieve the same results are within the scope of the invention.Substitutions of elements from one described embodiment to another arealso fully intended and contemplated.

1. A method for determining in a network component when to provideservice to client devices operating in power-saving mode in a wirelessnetwork, said method comprising the steps of: receiving a requestedservicing signal (410) from said client device; determining an abilityto accommodate said requested servicing signal (420); and providing anindication of the ability to accommodate said requested servicing signal(435, 450, 470) to said client device.
 2. The method as recited in claim1, wherein said requested servicing signal is selected from the groupconsisting of: scheduled and unscheduled.
 3. The method as recited inclaim 2, wherein said scheduled requested servicing signal includes aproposed service schedule (460).
 4. The method as recited in claim 3,further comprising the step of: modifying said proposed service schedule(465).
 5. The method as recited in claim 4, further comprising the stepof: providing said modified service schedule to said client device(470).
 6. The method as recited in claim 1, wherein said indication isselected from the group consisting of: denied, accommodated with change,accommodated (435, 450, 470).
 7. The method as recited in claim 1,wherein the step of determining an ability to accommodate is based on atleast one factor selected from the group consisting of: the requestedservicing method, the proposed schedule, network operating state,network policy, and network condition (510, 630).
 8. A device fordetermining in a network component when to provide service to clientdevices operating in power-saving mode in a wireless network, saiddevice comprising: a memory (704); a processor (703) in communicationwith said memory, said processor operable to execute code for: receivinga requested servicing signal (410) from said client device (701);determining an ability to accommodate said requested servicing signal(420); and providing an indication of the ability to accommodate saidrequested servicing signal (435, 450, 470) to said client device.
 9. Thedevice as recited in claim 8, wherein said requested servicing signal isselected from the group consisting of: scheduled and unscheduled. 10.The device as recited in claim 9, wherein said scheduled requestedservicing signal includes a proposed service schedule (460).
 11. Thedevice as recited in claim 10, wherein said processor is furtheroperable to execute code for: modifying said, proposed service schedule(465).
 12. The device as recited in claim 11, wherein said processor isfurther operable to execute code for: providing said modified serviceschedule to said client device (470).
 13. The device as recited in claim8, wherein said indication is selected from the group consisting of:denied, accommodated with change, accommodated (435, 450, 470).
 14. Thedevice as recited in claim 1, wherein said processor is further operableto execute code for: determining said ability to accommodate based on atleast one factor selected from the group consisting of: the requestedservicing method, the proposed schedule, network operating state,network policy, and network condition (430, 510, 630).
 15. The device asrecited in claim 8, further comprising: an I/O device (702) operable asan interface between said network and said processor.
 16. The device asrecited in claim 8, wherein said code is stored in said memory.
 17. Thedevice as recited in claim 8, further comprising: a receiving device forreceiving said requested service method; and a transmitting device forproviding at least said indication to said client device.
 18. Aprocessor (703) within a network component (700) for determining theability of said network component to honor a servicing request signalreceiving from a client device (701), said processor executing code for:reviewing an operating state of said network component (430, 510, 630);reviewing said servicing request signal (420); accommodating saidservicing request signal, with modification when necessary, when saidoperating state and said servicing request signal are corresponding(435, 470); and providing an indication of said accommodation to saidclient device.
 19. The processor as recited in claim 18, furtherexecuting code for: providing an indication of denying said servicingrequest signal when said operating state and said servicing requestsignal are not corresponding (530).
 20. The processor as recited inclaim 18, wherein said operating state is selected from the groupconsisting of: processing load, demand, projected processing load,projected demand, network component operating state, network componentpolicy, and network component condition.
 21. The processor as recited inclaim 18, wherein said servicing request signal is selected from thegroup consisting of: scheduled and unscheduled.